package com.shiyun.disaster_station.station.controller;

import com.shiyun.disaster_station.common.ReturnMap;
import com.shiyun.disaster_station.station.service.StationService;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

import javax.annotation.Resource;
import java.util.List;

/**
 * 类 描 述: 站点
 * 作   者: 史 云
 * 版   本: 1.0.0
 * 时   间: 2022年01月11日  10:00:00
 */
@RestController
@RequestMapping("/station")
public class StationController {
    @Resource
    StationService stationService;

    /**
     * 方法描述: 站点导入
     * 作    者: 史 云 
     * 时    间: 2022年05月17日  11:18:24
     */
    @RequestMapping("/importStation")
    public ReturnMap importStation(@RequestParam("file") MultipartFile file,@RequestParam("headerTextList") List<String> headerTextList,@RequestParam("headerKeyList") List<String> headerKeyList) {
        return stationService.importStation(file,headerTextList,headerKeyList);
    }

    /**
     * 方法描述: 查询异常站点
     * 作    者: 史 云
     * 时    间: 2022年06月18日  15:24:19
     */
    @RequestMapping("/getUnSolveStation")
    public ReturnMap getUnSolveStation(@RequestParam("file") MultipartFile file,@RequestParam("headerTextList") List<String> headerTextList,@RequestParam("headerKeyList") List<String> headerKeyList){
        return stationService.getUnSolveStation(file,headerTextList,headerKeyList);
    }

    /**
     * 方法描述: 更新站点线路类型
     * 作    者: 史 云
     * 时    间: 2022年08月25日  16:22:44
     */
    @PutMapping("/updateLineType")
    public ReturnMap updateLineType(){
        return stationService.updateLineType();
    }

    /**
     * 方法描述: 更新站点里程
     * 作    者: 史 云
     * 时    间: 2022年11月09日  09:51:20
     */
    @PutMapping("/updateMileage/{lineId}")
    public ReturnMap updateMileage(@PathVariable(value = "lineId")String lineId){
        stationService.updateStationMileage(lineId);
        return ReturnMap.ok();
    }
}
